home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 026-050 / scopedisk38 / ffsdsch / read_me < prev   
Text File  |  1995-03-18  |  8KB  |  201 lines

  1.  
  2.  
  3. (*======================================================================*)
  4. (*           AutoDiskChnage: A program to run FFS on floppies           *)
  5. (*======================================================================*)
  6. (*        Copyright © 1988 Martin Taillefer, All Rights Reserved        *)
  7. (*                   This is freely redistributable                     *)
  8. (*======================================================================*)
  9. (*      Version: 1.00           Author : Martin Taillefer               *)
  10. (*      Date   : 12-Oct-88      Changes: Original                       *)
  11. (*======================================================================*)
  12.  
  13.  
  14. NOTE: This document will refer to "internal" and "first external" disk
  15.       drives. For A2000 users, the internal drive will be the disk drive on
  16.       the right side. The "first external" drive refers to the unit on the
  17.       left side on your Amiga.
  18.  
  19.  
  20. FFS: The Fast File System
  21. -------------------------
  22. The Fast File System is an alternate file systen developed by Commodore to
  23. replace the BCPL file system used up to this point. The initial release of
  24. FFS (as shipped with the 1.3 enhancer kit) is geared towards non-removable
  25. media such as hard disks, or RAD: (another 1.3 goodie). This means that FFS
  26. doesn't directly support floopies.
  27.  
  28.  
  29. The Problem: Swapping floppies
  30. ------------------------------
  31. In all fairness, FFS does work on floppies. There is a problem though: it
  32. doesn't notice when you swap floppies. This steems from the fact that FFS
  33. currently expects to be run on non-removabke media only. This means you can
  34. easily corrupt floppies by writing data to a disk which was meant for
  35. another disk since FFS doesn't know that you changed floppy and may have a
  36. corrupt view of the floppy in the drive.
  37.  
  38.  
  39. The First Solution: DISKCHANGE
  40. ------------------------------
  41. The 1.2 release of AmigaDOS saw the apparition of the DISKCHANGE command.
  42. This was mainly meant for 5'25 inch drive users. It turns out the command
  43. can also be used to inform FFS whenever a disk is changed. This means that
  44. every time you change a floppy, you have to send a DISKCHANGE command. This
  45. is quite annoying, and risky. If you forget a DISKCHANGE only once you can
  46. damage two floppies!
  47.  
  48.  
  49. The Second Solution: AUTODISKCHANGE
  50. -----------------------------------
  51. AutoDiskChange is a small program that you run in the background. Every time
  52. you change a floppy it will send the appropriate information to FFS to tell
  53. it that a disk has changed. This puts FFS on the same level as the normal
  54. file system.
  55.  
  56.  
  57. The Third Solution: 1.4
  58. -----------------------
  59. Kickstart 1.4 will see FFS migrate into ROM. This will allow the system to
  60. be completly running FFS (including floppies).
  61.  
  62.  
  63. Why FFS on floppies?
  64. --------------------
  65. FFS will allow you to store 4.9% more data on the same floppy. It will also
  66. do disk directories quite a bit faster. Disk reads and writes are speeded up
  67. a little, but not that much. This is due to hardware limitations. One area
  68. where a big difference can be perceived is when doing 2 or more disk
  69. transactions simultaneously. If you're saving some data to floppy in DF0:
  70. and reading stuff to the RAM disk from DF1:, there will be virtually no
  71. slowdown of either the write or read operations. This is in contrast with
  72. the old FS. Note that performing two disk operations on the same floopy still
  73. results in HORRIBLE performance loss.
  74.  
  75.  
  76. 'How To' Guide
  77. --------------
  78. First, you need the file "FastFileSystem" in your system's L: directory.
  79.  
  80. Second, you will need the file "arp.library" in your system's LIBS:
  81. directory.
  82.  
  83. Third, append the following MountList entries to your system's mountlist
  84. (found in the DEVS: directory).
  85.  
  86. /* Entries to mount the normal DF0: and DF1: as FF0: and FF1:, those new
  87.  * handlers will use FFS.
  88.  */
  89. FF2:       Device = trackdisk.device
  90.            FileSystem = l:FastFileSystem
  91.            GlobVec = -1
  92.            Mask = 0x7FFF
  93.            Unit   = 0
  94.            Flags  = 1
  95.            Surfaces  = 2
  96.            Mount = 1
  97.            BlocksPerTrack = 11
  98.            Reserved = 2
  99.            PreAlloc = 11
  100.            Interleave = 0
  101.            LowCyl = 0  ;  HighCyl = 79
  102.            Buffers = 5
  103.            BufMemType = 3
  104.            DosType = 0x444F5301
  105. #
  106.  
  107. FF3:       Device = trackdisk.device
  108.            FileSystem = l:FastFileSystem
  109.            GlobVec = -1
  110.            Mask = 0x7FFF
  111.            Unit   = 1
  112.            Flags  = 1
  113.            Surfaces  = 2
  114.            Mount =1
  115.            BlocksPerTrack = 11
  116.            Reserved = 2
  117.            PreAlloc = 11
  118.            Interleave = 0
  119.            LowCyl = 0  ;  HighCyl = 79
  120.            Buffers = 5
  121.            BufMemType = 3
  122. #
  123.  
  124. Fourth, issue the following commands from a CLI:
  125.    MOUNT FF0:
  126.    MOUNT FF1:
  127.  
  128. At this point, you should run AutoDiskChange:
  129.    RUN >NIL: <NIL: AutoDiskChange FF0: FF1:
  130.  
  131. And voila! You now have two FFS drives on your system! Of course, you will
  132. also need to format floppies in FFS mode. To do this, enter a blank disk in
  133. your external drive and type:
  134.    SYS:SYSTEM/FORMAT DRIVE FF1: NAME "FFS Floppy!" NOICONS FFS
  135.  
  136. Once the format operation complete, you can now do a directory of your disk
  137. and copy data onto it. You need to refer to the drive as FF1:, not DF1:. So
  138. to copy something on an FFS floppy in your external drive, type:
  139.    COPY MyFile TO FF1:
  140.  
  141. You can still use your drives with old-style floppies. You just access them
  142. as usual using DF0: and DF1:.
  143.  
  144. When an FFS floppy is in your external drive, the INFO command will report
  145. that the disk in unit DF1: is "Not a DOS Disk", which is true, it's an FFS
  146. disk. The entry for drive FF1: will correctly show the name of your floppy.
  147. If you try to access an FFS floppy using DF1:, you'll get a "Not a DOS Disk"
  148. requester. You can simply click cancel and try again with FF1:. The same
  149. situation will occur if you try to access a non-FFS floppy as FFS.
  150.  
  151. The only way to get rid of FFS and of AutoDiskChange is to reboot the system.
  152.  
  153.  
  154. Formal Instructions
  155. -------------------
  156. AutoDiskChange can accept up to four arguments. These arguments simply
  157. describe the names of the FFS handlers for each of your drives. So as we did
  158. above:
  159.    AutoDiskChange FF0: FF1:
  160. tells the program that your internal floppy will be mounted as FF0: and your
  161. first external floppy will be FF1:. You can specify up to four drives this
  162. way. You must make sure your drives have been previously mounted as FFS
  163. before using AutoDiskChange. You cannot mount your third external drive
  164. without also mounting all drives before it. If you only intend on using FFS
  165. on this drive it will not be a problem. Mounting FFS takes very little
  166. memory, so you can mount on all your drive, but still use it on a single
  167. drive.
  168.  
  169.  
  170. How It All Works
  171. ----------------
  172. AutoDiskChange hooks up in the trackdisk device disk change interrupt.
  173. Whenever this interrupt occurs, the program then sends an ACTION_DISKCHANGE
  174. packet to the related FFS handler.
  175.  
  176.  
  177. Problems
  178. --------
  179. FFS will NOT warn you if you remove a floppy too quickly (when the drive
  180. light is on). When writing, FFS also has a tendancy to turn off the drive
  181. light for a few seconds, and then turns it back on for about a second. This
  182. is because FFS caches information and if there is no activity for awhile,
  183. flushes its buffers to disk.
  184.  
  185. FFS seems to return wierd status information to the INFO command. Simply
  186. don't look at the status info! The problem was confirmed by Steve Beats of
  187. Commodore and is due to the fact thet FFS doesn't know about removable
  188. media.
  189.  
  190.  
  191.  
  192. I hope you benefit from this program, it was fun to write in any case.
  193.  
  194.                                 Martin Taillefer
  195.                                 136 Des Frenes
  196.                                 Montreal, Quebec
  197.                                 CANADA   H1B 1X8
  198.  
  199.                                 TEL: 514/645-4083
  200.                 BIX: vertex
  201.